namespace = cr_background

# Shared launcher for the temporary Ruler Designer opt-in trait and recovery decision.
character_event = {
	id = cr_background.1
	hide_window = yes
	is_triggered_only = yes

	trigger = {
		ai = no
		trait = cr_background_builder
		NOT = { has_character_flag = cr_bg_setup_in_progress }
	}

	immediate = {
		if = {
			limit = { NOT = { age = 17 } }
			add_age = 4
		}
		else_if = {
			limit = { NOT = { age = 18 } }
			add_age = 3
		}
		else_if = {
			limit = { NOT = { age = 19 } }
			add_age = 2
		}
		else_if = {
			limit = { NOT = { age = 20 } }
			add_age = 1
		}

		if = {
			limit = {
				OR = {
					father_even_if_dead = { always = yes }
					mother_even_if_dead = { always = yes }
				}
			}
			character_event = { id = cr_background.3 }
		}
		else = {
			set_character_flag = cr_bg_setup_in_progress
			cr_background_clear_ruler_designer_training = yes
			character_event = { id = cr_background.10 }
		}
	}
}

long_character_event = {
	id = cr_background.3
	title = CR_BACKGROUND_3_TITLE
	desc = CR_BACKGROUND_3_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_3_A
		remove_trait = cr_background_builder
	}
}

# Family class.
long_character_event = {
	id = cr_background.10
	title = CR_BACKGROUND_10_TITLE
	desc = CR_BACKGROUND_10_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_10_A
		set_character_flag = cr_bg_lowborn
		character_event = { id = cr_background.20 }
	}
	option = {
		name = CR_BACKGROUND_10_B
		set_character_flag = cr_bg_noble_born
		character_event = { id = cr_background.20 }
	}
}

# Education structure.
long_character_event = {
	id = cr_background.20
	title = CR_BACKGROUND_20_TITLE
	desc = CR_BACKGROUND_20_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_20_A
		set_character_flag = cr_bg_single_education
		character_event = { id = cr_background.30 }
	}
	option = {
		name = CR_BACKGROUND_20_B
		set_character_flag = cr_bg_dual_education
		character_event = { id = cr_background.40 }
	}
}

# Single education field selection.
long_character_event = {
	id = cr_background.30
	title = CR_BACKGROUND_30_TITLE
	desc = CR_BACKGROUND_30_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_FIELD_DIPLOMACY
		set_character_flag = cr_bg_primary_diplomacy
		cr_background_apply_single_education = yes
		character_event = { id = cr_background.50 }
	}
	option = {
		name = CR_BACKGROUND_FIELD_MARTIAL
		set_character_flag = cr_bg_primary_martial
		cr_background_apply_single_education = yes
		character_event = { id = cr_background.50 }
	}
	option = {
		name = CR_BACKGROUND_FIELD_STEWARDSHIP
		set_character_flag = cr_bg_primary_stewardship
		cr_background_apply_single_education = yes
		character_event = { id = cr_background.50 }
	}
	option = {
		name = CR_BACKGROUND_MORE_FIELDS
		character_event = { id = cr_background.31 }
	}
}

long_character_event = {
	id = cr_background.31
	title = CR_BACKGROUND_30_TITLE
	desc = CR_BACKGROUND_31_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_FIELD_INTRIGUE
		set_character_flag = cr_bg_primary_intrigue
		cr_background_apply_single_education = yes
		character_event = { id = cr_background.50 }
	}
	option = {
		name = CR_BACKGROUND_FIELD_LEARNING
		set_character_flag = cr_bg_primary_learning
		cr_background_apply_single_education = yes
		character_event = { id = cr_background.50 }
	}
	option = {
		name = CR_BACKGROUND_RETURN_FIELDS
		character_event = { id = cr_background.30 }
	}
}

# First field for dual education.
long_character_event = {
	id = cr_background.40
	title = CR_BACKGROUND_40_TITLE
	desc = CR_BACKGROUND_40_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = { name = CR_BACKGROUND_FIELD_DIPLOMACY set_character_flag = cr_bg_primary_diplomacy character_event = { id = cr_background.42 } }
	option = { name = CR_BACKGROUND_FIELD_MARTIAL set_character_flag = cr_bg_primary_martial character_event = { id = cr_background.43 } }
	option = { name = CR_BACKGROUND_FIELD_STEWARDSHIP set_character_flag = cr_bg_primary_stewardship character_event = { id = cr_background.44 } }
	option = { name = CR_BACKGROUND_MORE_FIELDS character_event = { id = cr_background.41 } }
}

long_character_event = {
	id = cr_background.41
	title = CR_BACKGROUND_40_TITLE
	desc = CR_BACKGROUND_41_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = { name = CR_BACKGROUND_FIELD_INTRIGUE set_character_flag = cr_bg_primary_intrigue character_event = { id = cr_background.45 } }
	option = { name = CR_BACKGROUND_FIELD_LEARNING set_character_flag = cr_bg_primary_learning character_event = { id = cr_background.46 } }
	option = { name = CR_BACKGROUND_RETURN_FIELDS character_event = { id = cr_background.40 } }
}

# Second field pages. Each omits the first field by construction.
long_character_event = {
	id = cr_background.42
	title = CR_BACKGROUND_42_TITLE
	desc = CR_BACKGROUND_42_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = { name = CR_BACKGROUND_FIELD_MARTIAL set_character_flag = cr_bg_secondary_martial cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_STEWARDSHIP set_character_flag = cr_bg_secondary_stewardship cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_INTRIGUE set_character_flag = cr_bg_secondary_intrigue cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_LEARNING set_character_flag = cr_bg_secondary_learning cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
}

long_character_event = {
	id = cr_background.43
	title = CR_BACKGROUND_42_TITLE
	desc = CR_BACKGROUND_42_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = { name = CR_BACKGROUND_FIELD_DIPLOMACY set_character_flag = cr_bg_secondary_diplomacy cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_STEWARDSHIP set_character_flag = cr_bg_secondary_stewardship cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_INTRIGUE set_character_flag = cr_bg_secondary_intrigue cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_LEARNING set_character_flag = cr_bg_secondary_learning cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
}

long_character_event = {
	id = cr_background.44
	title = CR_BACKGROUND_42_TITLE
	desc = CR_BACKGROUND_42_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = { name = CR_BACKGROUND_FIELD_DIPLOMACY set_character_flag = cr_bg_secondary_diplomacy cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_MARTIAL set_character_flag = cr_bg_secondary_martial cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_INTRIGUE set_character_flag = cr_bg_secondary_intrigue cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_LEARNING set_character_flag = cr_bg_secondary_learning cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
}

long_character_event = {
	id = cr_background.45
	title = CR_BACKGROUND_42_TITLE
	desc = CR_BACKGROUND_42_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = { name = CR_BACKGROUND_FIELD_DIPLOMACY set_character_flag = cr_bg_secondary_diplomacy cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_MARTIAL set_character_flag = cr_bg_secondary_martial cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_STEWARDSHIP set_character_flag = cr_bg_secondary_stewardship cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_LEARNING set_character_flag = cr_bg_secondary_learning cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
}

long_character_event = {
	id = cr_background.46
	title = CR_BACKGROUND_42_TITLE
	desc = CR_BACKGROUND_42_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = { name = CR_BACKGROUND_FIELD_DIPLOMACY set_character_flag = cr_bg_secondary_diplomacy cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_MARTIAL set_character_flag = cr_bg_secondary_martial cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_STEWARDSHIP set_character_flag = cr_bg_secondary_stewardship cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
	option = { name = CR_BACKGROUND_FIELD_INTRIGUE set_character_flag = cr_bg_secondary_intrigue cr_background_apply_dual_education = yes character_event = { id = cr_background.50 } }
}

# Profession pages. All pages remain available, while individual choices are education-filtered.
long_character_event = {
	id = cr_background.50
	title = CR_BACKGROUND_50_TITLE
	desc = CR_BACKGROUND_50_DESC
	picture = GFX_cr_evt_council_speaker
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_CLASS_ADMINISTRATOR
		trigger = { OR = { cr_background_has_diplomacy_education = yes cr_background_has_stewardship_education = yes } }
		add_trait = administrator
		set_character_flag = cr_bg_class_administrator
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_ARCHITECT
		trigger = { OR = { cr_background_has_stewardship_education = yes cr_background_has_learning_education = yes } }
		add_trait = architect
		set_character_flag = cr_bg_class_architect
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_COURTESAN
		trigger = { OR = { cr_background_has_diplomacy_education = yes cr_background_has_intrigue_education = yes } }
		add_trait = exclusive_whore
		set_character_flag = cr_bg_class_courtesan
		character_event = { id = cr_background.56 }
	}
	option = { name = CR_BACKGROUND_MORE_CLASSES_51 character_event = { id = cr_background.51 } }
}

long_character_event = {
	id = cr_background.51
	title = CR_BACKGROUND_50_TITLE
	desc = CR_BACKGROUND_51_DESC
	picture = GFX_cr_evt_council_speaker
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_CLASS_DUELIST
		trigger = { cr_background_has_martial_education = yes }
		add_trait = duelist
		set_character_flag = cr_bg_class_duelist
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_GAME_MASTER
		trigger = { OR = { cr_background_has_diplomacy_education = yes cr_background_has_martial_education = yes } }
		add_trait = gamer
		set_character_flag = cr_bg_class_game_master
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_GARDENER
		trigger = { cr_background_has_stewardship_education = yes }
		add_trait = gardener
		set_character_flag = cr_bg_class_gardener
		character_event = { id = cr_background.56 }
	}
	option = { name = CR_BACKGROUND_MORE_CLASSES_52 character_event = { id = cr_background.52 } }
}

long_character_event = {
	id = cr_background.52
	title = CR_BACKGROUND_50_TITLE
	desc = CR_BACKGROUND_52_DESC
	picture = GFX_cr_evt_feast
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_CLASS_REVELER
		trigger = { OR = { cr_background_has_diplomacy_education = yes cr_background_has_intrigue_education = yes } }
		add_trait = hedonist
		set_character_flag = cr_bg_class_reveler
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_HUNTER
		trigger = { cr_background_has_martial_education = yes }
		add_trait = hunter
		set_character_flag = cr_bg_class_hunter
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_TORTURER
		trigger = { cr_background_has_intrigue_education = yes }
		add_trait = impaler
		set_character_flag = cr_bg_class_torturer
		character_event = { id = cr_background.56 }
	}
	option = { name = CR_BACKGROUND_MORE_CLASSES_53 character_event = { id = cr_background.53 } }
}

long_character_event = {
	id = cr_background.53
	title = CR_BACKGROUND_50_TITLE
	desc = CR_BACKGROUND_53_DESC
	picture = GFX_cr_evt_spymaster
	border = GFX_event_normal_frame_intrigue
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_CLASS_SPY
		trigger = { cr_background_has_intrigue_education = yes }
		add_trait = schemer
		set_character_flag = cr_bg_class_spy
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_SEDUCER
		trigger = {
			male = yes
			OR = { cr_background_has_diplomacy_education = yes cr_background_has_intrigue_education = yes }
		}
		add_trait = seducer
		set_character_flag = cr_bg_class_seducer
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_SEDUCTRESS
		trigger = {
			female = yes
			OR = { cr_background_has_diplomacy_education = yes cr_background_has_intrigue_education = yes }
		}
		add_trait = seductress
		set_character_flag = cr_bg_class_seducer
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_MYSTIC
		trigger = { cr_background_has_learning_education = yes }
		add_trait = mystic
		set_character_flag = cr_bg_class_mystic
		character_event = { id = cr_background.56 }
	}
	option = { name = CR_BACKGROUND_MORE_CLASSES_54 character_event = { id = cr_background.54 } }
}

long_character_event = {
	id = cr_background.54
	title = CR_BACKGROUND_50_TITLE
	desc = CR_BACKGROUND_54_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_religion
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_CLASS_SCHOLAR
		trigger = { cr_background_has_learning_education = yes }
		add_trait = scholar
		set_character_flag = cr_bg_class_scholar
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_SOCIALIZER
		trigger = { cr_background_has_diplomacy_education = yes }
		add_trait = socializer
		set_character_flag = cr_bg_class_socializer
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_STRATEGIST
		trigger = { cr_background_has_martial_education = yes }
		add_trait = strategist
		set_character_flag = cr_bg_class_strategist
		character_event = { id = cr_background.56 }
	}
	option = { name = CR_BACKGROUND_MORE_CLASSES_55 character_event = { id = cr_background.55 } }
}

long_character_event = {
	id = cr_background.55
	title = CR_BACKGROUND_50_TITLE
	desc = CR_BACKGROUND_55_DESC
	picture = GFX_cr_evt_war_planning
	border = GFX_event_normal_frame_war
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_CLASS_THEOLOGIAN
		trigger = { cr_background_has_learning_education = yes }
		add_trait = theologian
		set_character_flag = cr_bg_class_theologian
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_ADVENTURER
		trigger = {
			OR = {
				cr_background_has_diplomacy_education = yes
				cr_background_has_martial_education = yes
				cr_background_has_intrigue_education = yes
			}
		}
		add_trait = adventurer
		set_character_flag = cr_bg_class_adventurer
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_SOLDIER
		trigger = { has_character_flag = cr_bg_lowborn cr_background_has_martial_education = yes }
		cr_background_grant_military_trait = yes
		set_character_flag = cr_bg_class_military
		character_event = { id = cr_background.56 }
	}
	option = {
		name = CR_BACKGROUND_CLASS_CAPTAIN
		trigger = { has_character_flag = cr_bg_noble_born cr_background_has_martial_education = yes }
		cr_background_grant_military_trait = yes
		set_character_flag = cr_bg_class_military
		character_event = { id = cr_background.56 }
	}
	option = { name = CR_BACKGROUND_RETURN_CLASSES_50 character_event = { id = cr_background.50 } }
}

# Route the ruler to the anatomy selection appropriate to the body already
# established in Ruler Designer. Hermaphroditic rulers complete both branches.
character_event = {
	id = cr_background.56
	hide_window = yes
	is_triggered_only = yes

	immediate = {
		cr_clean_invalid_visible_body_traits_effect = yes
		if = {
			limit = { cr_can_have_visible_bosom_size_trait = yes }
			character_event = { id = cr_background.57 }
		}
		else_if = {
			limit = { cr_can_have_visible_dick_size_trait = yes }
			character_event = { id = cr_background.59 }
		}
		else = {
			character_event = { id = cr_background.60 }
		}
	}
}

long_character_event = {
	id = cr_background.57
	title = CR_BACKGROUND_57_TITLE
	desc = CR_BACKGROUND_57_DESC
	picture = GFX_cr_evt_relaxed_ruler
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_BOSOM_SMALL
		cr_background_set_small_bosom = yes
		cr_background_continue_after_bosom_selection = yes
	}
	option = {
		name = CR_BACKGROUND_BOSOM_MODERATE
		cr_background_set_moderate_bosom = yes
		cr_background_continue_after_bosom_selection = yes
	}
	option = {
		name = CR_BACKGROUND_BOSOM_FULL
		cr_background_set_full_bosom = yes
		cr_background_continue_after_bosom_selection = yes
	}
	option = {
		name = CR_BACKGROUND_MORE_BOSOM_SIZES
		character_event = { id = cr_background.58 }
	}
}

long_character_event = {
	id = cr_background.58
	title = CR_BACKGROUND_57_TITLE
	desc = CR_BACKGROUND_58_DESC
	picture = GFX_cr_evt_relaxed_ruler
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_BOSOM_AMPLE
		cr_background_set_ample_bosom = yes
		cr_background_continue_after_bosom_selection = yes
	}
	option = {
		name = CR_BACKGROUND_BOSOM_VERY_LARGE
		cr_background_set_very_large_bosom = yes
		cr_background_continue_after_bosom_selection = yes
	}
	option = {
		name = CR_BACKGROUND_RETURN_BOSOM_SIZES
		character_event = { id = cr_background.57 }
	}
}

long_character_event = {
	id = cr_background.59
	title = CR_BACKGROUND_59_TITLE
	desc = CR_BACKGROUND_59_DESC
	picture = GFX_cr_evt_relaxed_ruler
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_ENDOWMENT_SMALL
		cr_background_set_small_dick = yes
		character_event = { id = cr_background.60 }
	}
	option = {
		name = CR_BACKGROUND_ENDOWMENT_AVERAGE
		cr_background_set_average_dick = yes
		character_event = { id = cr_background.60 }
	}
	option = {
		name = CR_BACKGROUND_ENDOWMENT_LARGE
		cr_background_set_large_dick = yes
		character_event = { id = cr_background.60 }
	}
	option = {
		name = CR_BACKGROUND_ENDOWMENT_EXCEPTIONAL
		cr_background_set_exceptional_dick = yes
		character_event = { id = cr_background.60 }
	}
}

# Parent survival and generation.
long_character_event = {
	id = cr_background.60
	title = CR_BACKGROUND_60_TITLE
	desc = CR_BACKGROUND_60_DESC
	picture = GFX_cr_evt_family
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_60_A
		set_character_flag = cr_bg_both_parents_alive
		cr_background_generate_parents = yes
		character_event = { id = cr_background.70 }
	}
	option = {
		name = CR_BACKGROUND_60_B
		set_character_flag = cr_bg_mother_only
		cr_background_generate_parents = yes
		character_event = { id = cr_background.70 }
	}
	option = {
		name = CR_BACKGROUND_60_C
		set_character_flag = cr_bg_father_only
		cr_background_generate_parents = yes
		character_event = { id = cr_background.70 }
	}
	option = {
		name = CR_BACKGROUND_60_D
		set_character_flag = cr_bg_both_dead
		cr_background_generate_parents = yes
		character_event = { id = cr_background.70 }
	}
}

# The flags remain until the player closes this summary so all custom text can resolve.
long_character_event = {
	id = cr_background.70
	title = CR_BACKGROUND_70_TITLE
	desc = CR_BACKGROUND_70_DESC
	picture = GFX_cr_evt_book_carolingian_script
	border = GFX_event_normal_frame_diplomacy
	is_triggered_only = yes

	option = {
		name = CR_BACKGROUND_70_A
		cr_background_cleanup = yes
	}
}
